package ejemplo.componentes;

import java.awt.Color;
import java.awt.Graphics;

import ejemplo.componentes.interfaces.IRenderizable;
import es.componentes.Componente;
import es.entidades.Entidad;
/**
 * Componente que se encarga del renderizado.
 * @author Miguel Vicente
 */
public class ComponenteRender extends Componente implements IRenderizable {
	
	private int ancho;
	private int alto;
	private ComponentePosicion2D posicion;
	
	/**
	 * Constructor. Crea un nuevo Componente Render.
	 * @param ancho Ancho de la Entidad
	 * @param alto Alto de la Entidad
	 * @param posicion Posicion de la Entidad
	 * @param entidad Entidad a la que pertenece este Componente.
	 */
	public ComponenteRender(int ancho, int alto, ComponentePosicion2D posicion, Entidad entidad) {
		super(entidad);
		this.ancho = ancho;
		this.alto = alto;
		this.posicion = posicion;
	}

	@Override
	public String getTipo() {
		return IRenderizable.ID_INTERFAZ;
	}
	
	@Override
	public void render(Graphics g) {
		g.setColor(Color.BLUE);
		g.fillRect((int)posicion.getX(), (int)posicion.getY(), ancho, alto);
		g.setColor(Color.BLACK);
		g.drawRect((int)posicion.getX(), (int)posicion.getY(), ancho, alto);
	}

	public int getAncho() {
		return ancho;
	}

	public void setAncho(int ancho) {
		this.ancho = ancho;
	}

	public int getAlto() {
		return alto;
	}

	public void setAlto(int alto) {
		this.alto = alto;
	}

	public ComponentePosicion2D getPosicion() {
		return posicion;
	}

	public void setPosicion(ComponentePosicion2D posicion) {
		this.posicion = posicion;
	}

}
